package com.ruoyi.sl.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 请假记录对象 sl_leave_record
 * 
 * @author admin
 * @date 2024-06-14
 */
public class SlLeaveRecord extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** ID */
    private Long leaveRecordId;

    /** 月薪ID */
    @Excel(name = "月薪ID")
    private Long ofcmpayId;

    /** 用户名 */
    @Excel(name = "用户名")
    private String userName;

    /**  */
    @Excel(name = "")
    private String userNick;

    /** 年 */
    @Excel(name = "年")
    private String ofcmpayYear;

    /** 月 */
    @Excel(name = "月")
    private String ofcmpayMonth;

    /** 请假日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "请假日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date leaveDate;

    /** 开始日期 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "开始日期", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date dateStart;

    /** 结束日期 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "结束日期", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date dateEnd;

    /** 请假天数 */
    @Excel(name = "请假天数")
    private BigDecimal leaveDay;

    /** 假别 */
    @Excel(name = "假别")
    private Long vacationId;

    /** 假期薪资 */
    @Excel(name = "假期薪资")
    private BigDecimal vacationPay;

    private SlVacation vacation;

    public void setLeaveRecordId(Long leaveRecordId) 
    {
        this.leaveRecordId = leaveRecordId;
    }

    public Long getLeaveRecordId() 
    {
        return leaveRecordId;
    }
    public void setOfcmpayId(Long ofcmpayId) 
    {
        this.ofcmpayId = ofcmpayId;
    }

    public Long getOfcmpayId() 
    {
        return ofcmpayId;
    }
    public void setUserName(String userName) 
    {
        this.userName = userName;
    }

    public String getUserName() 
    {
        return userName;
    }
    public void setUserNick(String userNick) 
    {
        this.userNick = userNick;
    }

    public String getUserNick() 
    {
        return userNick;
    }
    public void setOfcmpayYear(String ofcmpayYear) 
    {
        this.ofcmpayYear = ofcmpayYear;
    }

    public String getOfcmpayYear() 
    {
        return ofcmpayYear;
    }
    public void setOfcmpayMonth(String ofcmpayMonth) 
    {
        this.ofcmpayMonth = ofcmpayMonth;
    }

    public String getOfcmpayMonth() 
    {
        return ofcmpayMonth;
    }
    public void setLeaveDate(Date leaveDate) 
    {
        this.leaveDate = leaveDate;
    }

    public Date getLeaveDate() 
    {
        return leaveDate;
    }
    public void setDateStart(Date dateStart) 
    {
        this.dateStart = dateStart;
    }

    public Date getDateStart() 
    {
        return dateStart;
    }
    public void setDateEnd(Date dateEnd) 
    {
        this.dateEnd = dateEnd;
    }

    public Date getDateEnd() 
    {
        return dateEnd;
    }
    public void setLeaveDay(BigDecimal leaveDay) 
    {
        this.leaveDay = leaveDay;
    }

    public BigDecimal getLeaveDay() 
    {
        return leaveDay;
    }
    public void setVacationId(Long vacationId) 
    {
        this.vacationId = vacationId;
    }

    public Long getVacationId() 
    {
        return vacationId;
    }
    public void setVacationPay(BigDecimal vacationPay) 
    {
        this.vacationPay = vacationPay;
    }

    public BigDecimal getVacationPay() 
    {
        return vacationPay;
    }

    public SlVacation getVacation() {
        return vacation;
    }

    public void setVacation(SlVacation vacation) {
        this.vacation = vacation;
    }

    @Override
    public String toString() {
        return "SlLeaveRecord{" +
                "leaveRecordId=" + leaveRecordId +
                ", ofcmpayId=" + ofcmpayId +
                ", userName='" + userName + '\'' +
                ", userNick='" + userNick + '\'' +
                ", ofcmpayYear='" + ofcmpayYear + '\'' +
                ", ofcmpayMonth='" + ofcmpayMonth + '\'' +
                ", leaveDate=" + leaveDate +
                ", dateStart=" + dateStart +
                ", dateEnd=" + dateEnd +
                ", leaveDay=" + leaveDay +
                ", vacationId=" + vacationId +
                ", vacationPay=" + vacationPay +
                ", vacation=" + vacation +
                '}';
    }
}
